/********************************** (C) COPYRIGHT *******************************
* File Name          : main.c
* Author             : WCH
* Version            : V1.1
* Date               : 2019/11/05
* Description        : 外设从机应用主函数及任务系统初始化
*******************************************************************************/

/******************************************************************************/
/* 头文件包含 */
#include "CONFIG.h"
#include "CH57x_common.h"
#include "HAL.h"

#include "peripheral.h"

#include "stdbool.h"
#include "app_net.h"


/*********************************************************************
 * GLOBAL TYPEDEFS
 */
__align(4) u32 MEM_BUF[BLE_MEMHEAP_SIZE/4];

#if (defined (BLE_MAC)) && (BLE_MAC == TRUE)
u8C MacAddr[6] = {0x84,0xC2,0xE4,0xFF,0x02,0x06};
#endif



extern void app_uart_process(void);
extern void app_uart_init(void);


/*******************************************************************************
* Function Name  : main
* Description    : 主函数
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
int main( void ) {
#ifdef DEBUG
    GPIOA_SetBits(bTXD1);
    GPIOA_ModeCfg(bTXD1, GPIO_ModeOut_PP_5mA);
    UART1_DefInit( );
#endif
    PRINT("%s\n",VER_LIB);
    CH57X_BLEInit( );  // 协议栈初始化（时钟设置，内存规划等RF校准等）

    HAL_Init( );  // HAL层初始化（注册硬件处理任务）
    GAPRole_PeripheralInit( );  // GAP从机角色任务初始化
    Peripheral_Init( );  // 从机应用初始化
    app_net_init();  // NET应用初始化
    while(1) {
        TMOS_SystemProcess( );
    }
}

/******************************** endfile @ main ******************************/
